module.exports = {
  apps : [{
    name: 'node-elm',
    script: 'index.js',
    instances: 1 ,
    autorestart: true,
    watch: false,
    max_memory_restart: '1G',
    output: 'logs/out.log',
    error: 'logs/error.log',
    log: 'logs/combined.outerr.log',
    env: {
      NODE_ENV: 'development'
    },
    env_production: {
      NODE_ENV: 'production',
      HOST: '0.0.0.0',
      PORT: 8001,
    }
  }],
  deploy: {//PM2 部署如果出现WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!删除/Users/Alfred/.ssh/known_hosts对应主机的记录。
    //ssh会把每个你访问过计算机的公钥(public key)都记录在本地~/.ssh/known_hosts。当下次访问相同计算机时，OpenSSH会核对公钥。如果公钥不同，OpenSSH会发出警告， 避免你受到DNS Hijack之类的攻击。
    //原因：一台主机上有多个Linux系统，会经常切换，那么这些系统使用同一ip，登录过一次后就会把ssh信息记录在本地的~/.ssh/known_hsots文件中，切换该系统后再用ssh访问这台主机就会出现冲突警告。
    // npm install pm2 -g //在服务器也安装pm2
    // ln -s /www/server/nodejs/vx.x.x/bin/pm2 /usr/bin/pm2 //如果报错增加软连接
    productionKOR: {
      key: "/Users/alfred/.wind/vps-oracle-korea.key",
      host: ['193.123.228.251'],
      user:'opc',
      //----以下不变
      port: '22',
      ref : 'origin/master',
      repo: 'https://gitee.com/xinkangsiren/node-elm.git',
      path: '/www/wwwroot/nodeelm',
      ssh_options: 'StrictHostKeyChecking=no',
      'pre-deploy': 'git fetch --all && git pull',
      'post-deploy': 'npm install && pm2 reload ecosystem.config.js --env production',
    },
    productionAUS: {//复制production到另一台服务器
      key: "/Users/alfred/.wind/vps-oracle-australia.key",
      host: ['152.67.122.2'],
      user: 'ubuntu',
      //----以下不变
      port: '22',
      ref : 'origin/master',
      repo: 'https://gitee.com/xinkangsiren/node-elm.git',
      path: '/www/wwwroot/nodeelm',
      ssh_options: 'StrictHostKeyChecking=no',
      'pre-deploy': 'git fetch --all && git pull',
      'post-deploy': 'npm install && pm2 reload ecosystem.config.js --env production',
    }
  }
};
